import {createApp} from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'

createApp(App).use(store).use(router).mount('#app')
/*
keep-alive缓存组件
    keep-alive是Vue提供的一个抽象组件，主要用于保留组件状态或避免重新渲染。
    keep-alive包裹动态组件时，会缓存不活动的组件实例，而不是销毁他们
    `<KeepAlive>` 默认会缓存内部的所有组件实例，但我们可以通过 `include` 和 `exclude` prop 来定制该行为。这两个 prop 的值都可以是一个以英文逗号分隔的字符串、一个正则表达式，或是包含两种类型的一个数组
### 缓存实例的生命周期
    当一个组件实例从 DOM 上移除但因为被 <KeepAlive> 缓存而仍作为组件树的一部分时，它将变为**不活跃**状态而不是被卸载。当一个组件实例作为缓存树的一部分插入到 DOM 中时，它将重新被激活
    一个持续存在的组件可以通过activated() deactivated()注册相应的两个状态的生命周期钩子：
    `activated` 在组件挂载时也会调用，并且 `deactivated` 在组件卸载时也会调用。
    这两个钩子不仅适用于 `<KeepAlive>` 缓存的根组件，也适用于缓存树中的后代组件。
* */